課程資訊
課程名稱
科學計算導論
Introduction to Scientific Computing 
開課學期
99-2 
授課對象
理學院  數學研究所  
授課教師
王偉仲 
課號
MATH5413 
課程識別碼
221 U5670 
班次
 
學分
全/半年
半年 
必/選修
選修 
上課時間
星期一2,3,4(9:10~12:10) 
上課地點
天數101 
備註
總人數上限:52人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/992intrscicomp 
課程簡介影片
 
核心能力關聯
本課程尚未建立核心能力關連
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

This course introduces some fundamental scientific computing tools including algorithms and computing techniques, with illustrations on how they are used to solve real world problems. We focus on how to choose the most appropriate algorithms for the targeted applications, to implement the algorithms, to conduct numerical experiments, to evaluate the results, and to learn what to do when things go wrong. We take the viewpoint of "learning by doing." In addition to lectures, we emphasize hands-on experiences and discussions by conducting projects.

Tentative contents are listed as follows (not in order). The notation "*" stands for homework.

(I) Scientific Computing Software (3 weeks)
1 week for
- Chap 3 * Case Study: Computer Memory and Arithmetic: A Look under the Hood
- Chap 4 * Design of Computer Programs: Writing Your Legacy
- MATLAB, Linux, Coding Style, Naming Convention
2 weeks for
- Parallel Computing
- PETSc, SLEPC, MKL

(II) Dense Matrix Computation (3 weeks)
- Chap 5 Matrix Factorizations
- Chap 6 * Case Study: Image Deblurring: I can See Clearly Now

(III) Sparse Matrix Computation with Applications to Partial Differential Equations (8 weeks)
3 weeks for
- Chap 23 Case Study: Finite Differences and Finite Elements Getting to Know You
- Chap 28 Iterative Methods for Linear Systems
- Chap 30 * Case Study: Fast Solvers and Sylvester Equations Both Sides Now
5 weeks for
- Chap 31 Case Study: Eigenvalues: Valuable principles
- Large-scale Eigenvalue Solvers for Photonic Crystals Simulation
(* Hands-On numerical experiment worksheets)

(IV) Project Presentation (1 week) 

課程目標
- To obtain an intuitive and working understanding of the numerical algorithms introduced in the class.
- To solve mathematical problems in various disciplines by using appropriate algorithms and software effectively.
- To develop teamwork experience plus oral communicating and writing skills.  
課程要求
Students are expected to have backgrounds in Programing Language (MATLAB or C), Linear Algebra, Calculus, and Introduction to Computational Mathematics. While Advanced Calculus and Basic Differential Equations are helpful, they are not required. 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
(1) "Scientific Computing with Case Studies" by Dianne P. O'Leary. SIAM Press , 2009. Book website: http://www.cs.umd.edu/users/oleary/SCCS/
(2) Lecture notes will be provided in the classes. 
參考書目
 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
Homeworks 
60% 
Homeworks are mainly case studies and hands-on numerical experiment worksheets. Both theoretical analysis and coding are included. 
2. 
Term Project 
40% 
The term project can be individual or group. Some possible projects are (1) Work on a case study and then add some challenges in the case study, (2) Work on a case study and then find applications of a case study, and (3) Design a new case study. 
 
課程進度
週次
日期
單元主題
第2週
2/28  和平紀念日 (放假) 
第7週
4/04  溫書假 
第9週
4/18  期中考周 
第15週
5/30  Term project presentations 
第16週
6/06  端午節 (放假) 
第17週
6/13  Term project presentations